// pages/upload/index.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    tempFilePaths: [] // 存储选择的图片临时路径
  },

  /**
   * 选择图片方法
   */
  chooseImage: function() {
    const that = this;
    const remainCount = 3 - this.data.tempFilePaths.length;
    if (remainCount <= 0) {
      wx.showToast({
        title: '最多只能上传3张图片',
        icon: 'none'
      });
      return;
    }
    
    wx.chooseImage({
      count: remainCount, // 最多可选剩余数量
      sizeType: ['compressed'], // 压缩图
      sourceType: ['album', 'camera'], // 相册和相机
      success(res) {
        that.setData({
          tempFilePaths: that.data.tempFilePaths.concat(res.tempFilePaths)
        });
      },
      fail(err) {
        console.error('选择图片失败:', err);
      }
    });
  },

  /**
   * 删除图片
   */
  removeImage: function(e) {
    const index = e.currentTarget.dataset.index;
    const tempFilePaths = this.data.tempFilePaths;
    tempFilePaths.splice(index, 1);
    this.setData({
      tempFilePaths: tempFilePaths
    });
  },

  /**
   * 表单提交处理
   */
  handleSubmit: function(e) {
    const formData = e.detail.value;
    const images = this.data.tempFilePaths;
    
    // 表单验证
    if (!formData.name || formData.name.trim() === '') {
      wx.showToast({
        title: '请填写商品名称',
        icon: 'none'
      });
      return;
    }
    
    if (!formData.price || isNaN(formData.price) || parseFloat(formData.price) <= 0) {
      wx.showToast({
        title: '请输入有效的价格',
        icon: 'none'
      });
      return;
    }
    
    if (images.length === 0) {
      wx.showToast({
        title: '请至少上传一张商品图片',
        icon: 'none'
      });
      return;
    }
    
    // 显示加载中状态
    wx.showLoading({
      title: '正在提交...',
      mask: true
    });
    
    // 这里实际开发中应该调用上传接口
    console.log('表单数据:', formData);
    console.log('图片数据:', images);
    
    // 模拟网络请求
    setTimeout(() => {
      wx.hideLoading();
      
      // 提交成功处理
      wx.showToast({
        title: '商品上传成功',
        icon: 'success',
        duration: 2000,
        complete: () => {
          // 重置表单
          this.setData({
            tempFilePaths: []
          });
          // 在实际项目中这里可以跳转到商品列表页
        }
      });
    }, 1500);
  }
});